package com.gitee.wsl.mathematics.geometry.d2.poly.polygon

import com.gitee.wsl.io.dataproxy.asProxy
import com.gitee.wsl.mathematics.geometry.d2.AbstractCloseShape
import com.gitee.wsl.mathematics.geometry.d2.contour.ShapeContour
import com.gitee.wsl.mathematics.geometry.d2.line.Line
import com.gitee.wsl.mathematics.vector.vec2.Vec2f

class Polygon(points:MutableList<Vec2f> = mutableListOf()) :
    AbstractCloseShape( points.asProxy() ), PolygonShape2d<Float, Vec2f>, MutableList<Vec2f> by points {

    override val lines: List<Line>  get() = emptyList()

    override val contour: ShapeContour
        get() = TODO("Not yet implemented")

    override fun createLine(a: Vec2f, b: Vec2f) = Line(a,b)

}